﻿using System;
using System.Data;
using System.Text;
using System.Data.SqlClient;
using Maticsoft.DBUtility;//Please add references
namespace RLZY.DAL
{
	/// <summary>
	/// 数据访问类:Mess
	/// </summary>
	public partial class Mess
	{
		public Mess()
		{}
		#region  BasicMethod



		/// <summary>
		/// 增加一条数据
		/// </summary>
		public int Add(RLZY.Model.Mess model)
		{
			StringBuilder strSql=new StringBuilder();
			strSql.Append("insert into Mess(");
			strSql.Append("工号,姓名,性别,出生日期,单位,部门,用工性质,身份证号,参加工作时间,政治面貌,婚姻状况,民族,籍贯,干工标识,学历,学历种类,学习形式,毕业学校,毕业时间,毕业类别,所学专业,党政职别,职称,获职称时间,工人技术等级,鉴定工种,鉴定工种时间,医疗保险号,社会保险号,人事档案号,劳动合同号)");
			strSql.Append(" values (");
			strSql.Append("@工号,@姓名,@性别,@出生日期,@单位,@部门,@用工性质,@身份证号,@参加工作时间,@政治面貌,@婚姻状况,@民族,@籍贯,@干工标识,@学历,@学历种类,@学习形式,@毕业学校,@毕业时间,@毕业类别,@所学专业,@党政职别,@职称,@获职称时间,@工人技术等级,@鉴定工种,@鉴定工种时间,@医疗保险号,@社会保险号,@人事档案号,@劳动合同号)");
			strSql.Append(";select @@IDENTITY");
			SqlParameter[] parameters = {
					new SqlParameter("@工号", SqlDbType.VarChar,10),
					new SqlParameter("@姓名", SqlDbType.VarChar,10),
					new SqlParameter("@性别", SqlDbType.VarChar,10),
					new SqlParameter("@出生日期", SqlDbType.VarChar,20),
					new SqlParameter("@单位", SqlDbType.VarChar,20),
					new SqlParameter("@部门", SqlDbType.VarChar,20),
					new SqlParameter("@用工性质", SqlDbType.VarChar,10),
					new SqlParameter("@身份证号", SqlDbType.VarChar,20),
					new SqlParameter("@参加工作时间", SqlDbType.VarChar,20),
					new SqlParameter("@政治面貌", SqlDbType.VarChar,20),
					new SqlParameter("@婚姻状况", SqlDbType.VarChar,10),
					new SqlParameter("@民族", SqlDbType.VarChar,10),
					new SqlParameter("@籍贯", SqlDbType.VarChar,20),
					new SqlParameter("@干工标识", SqlDbType.VarChar,10),
					new SqlParameter("@学历", SqlDbType.VarChar,20),
					new SqlParameter("@学历种类", SqlDbType.VarChar,20),
					new SqlParameter("@学习形式", SqlDbType.VarChar,20),
					new SqlParameter("@毕业学校", SqlDbType.VarChar,20),
					new SqlParameter("@毕业时间", SqlDbType.VarChar,20),
					new SqlParameter("@毕业类别", SqlDbType.VarChar,20),
					new SqlParameter("@所学专业", SqlDbType.VarChar,20),
					new SqlParameter("@党政职别", SqlDbType.VarChar,20),
					new SqlParameter("@职称", SqlDbType.VarChar,20),
					new SqlParameter("@获职称时间", SqlDbType.VarChar,20),
					new SqlParameter("@工人技术等级", SqlDbType.VarChar,20),
					new SqlParameter("@鉴定工种", SqlDbType.VarChar,20),
					new SqlParameter("@鉴定工种时间", SqlDbType.VarChar,20),
					new SqlParameter("@医疗保险号", SqlDbType.VarChar,20),
					new SqlParameter("@社会保险号", SqlDbType.VarChar,20),
					new SqlParameter("@人事档案号", SqlDbType.VarChar,20),
					new SqlParameter("@劳动合同号", SqlDbType.VarChar,20)};
			parameters[0].Value = model.工号;
			parameters[1].Value = model.姓名;
			parameters[2].Value = model.性别;
			parameters[3].Value = model.出生日期;
			parameters[4].Value = model.单位;
			parameters[5].Value = model.部门;
			parameters[6].Value = model.用工性质;
			parameters[7].Value = model.身份证号;
			parameters[8].Value = model.参加工作时间;
			parameters[9].Value = model.政治面貌;
			parameters[10].Value = model.婚姻状况;
			parameters[11].Value = model.民族;
			parameters[12].Value = model.籍贯;
			parameters[13].Value = model.干工标识;
			parameters[14].Value = model.学历;
			parameters[15].Value = model.学历种类;
			parameters[16].Value = model.学习形式;
			parameters[17].Value = model.毕业学校;
			parameters[18].Value = model.毕业时间;
			parameters[19].Value = model.毕业类别;
			parameters[20].Value = model.所学专业;
			parameters[21].Value = model.党政职别;
			parameters[22].Value = model.职称;
			parameters[23].Value = model.获职称时间;
			parameters[24].Value = model.工人技术等级;
			parameters[25].Value = model.鉴定工种;
			parameters[26].Value = model.鉴定工种时间;
			parameters[27].Value = model.医疗保险号;
			parameters[28].Value = model.社会保险号;
			parameters[29].Value = model.人事档案号;
			parameters[30].Value = model.劳动合同号;

			object obj = DbHelperSQL.GetSingle(strSql.ToString(),parameters);
			if (obj == null)
			{
				return 0;
			}
			else
			{
				return Convert.ToInt32(obj);
			}
		}
		/// <summary>
		/// 更新一条数据
		/// </summary>
		public bool Update(RLZY.Model.Mess model)
		{
			StringBuilder strSql=new StringBuilder();
			strSql.Append("update Mess set ");
			strSql.Append("工号=@工号,");
			strSql.Append("姓名=@姓名,");
			strSql.Append("性别=@性别,");
			strSql.Append("出生日期=@出生日期,");
			strSql.Append("单位=@单位,");
			strSql.Append("部门=@部门,");
			strSql.Append("用工性质=@用工性质,");
			strSql.Append("身份证号=@身份证号,");
			strSql.Append("参加工作时间=@参加工作时间,");
			strSql.Append("政治面貌=@政治面貌,");
			strSql.Append("婚姻状况=@婚姻状况,");
			strSql.Append("民族=@民族,");
			strSql.Append("籍贯=@籍贯,");
			strSql.Append("干工标识=@干工标识,");
			strSql.Append("学历=@学历,");
			strSql.Append("学历种类=@学历种类,");
			strSql.Append("学习形式=@学习形式,");
			strSql.Append("毕业学校=@毕业学校,");
			strSql.Append("毕业时间=@毕业时间,");
			strSql.Append("毕业类别=@毕业类别,");
			strSql.Append("所学专业=@所学专业,");
			strSql.Append("党政职别=@党政职别,");
			strSql.Append("职称=@职称,");
			strSql.Append("获职称时间=@获职称时间,");
			strSql.Append("工人技术等级=@工人技术等级,");
			strSql.Append("鉴定工种=@鉴定工种,");
			strSql.Append("鉴定工种时间=@鉴定工种时间,");
			strSql.Append("医疗保险号=@医疗保险号,");
			strSql.Append("社会保险号=@社会保险号,");
			strSql.Append("人事档案号=@人事档案号,");
			strSql.Append("劳动合同号=@劳动合同号");
			strSql.Append(" where ID=@ID");
			SqlParameter[] parameters = {
					new SqlParameter("@工号", SqlDbType.VarChar,10),
					new SqlParameter("@姓名", SqlDbType.VarChar,10),
					new SqlParameter("@性别", SqlDbType.VarChar,10),
					new SqlParameter("@出生日期", SqlDbType.VarChar,20),
					new SqlParameter("@单位", SqlDbType.VarChar,20),
					new SqlParameter("@部门", SqlDbType.VarChar,20),
					new SqlParameter("@用工性质", SqlDbType.VarChar,10),
					new SqlParameter("@身份证号", SqlDbType.VarChar,20),
					new SqlParameter("@参加工作时间", SqlDbType.VarChar,20),
					new SqlParameter("@政治面貌", SqlDbType.VarChar,20),
					new SqlParameter("@婚姻状况", SqlDbType.VarChar,10),
					new SqlParameter("@民族", SqlDbType.VarChar,10),
					new SqlParameter("@籍贯", SqlDbType.VarChar,20),
					new SqlParameter("@干工标识", SqlDbType.VarChar,10),
					new SqlParameter("@学历", SqlDbType.VarChar,20),
					new SqlParameter("@学历种类", SqlDbType.VarChar,20),
					new SqlParameter("@学习形式", SqlDbType.VarChar,20),
					new SqlParameter("@毕业学校", SqlDbType.VarChar,20),
					new SqlParameter("@毕业时间", SqlDbType.VarChar,20),
					new SqlParameter("@毕业类别", SqlDbType.VarChar,20),
					new SqlParameter("@所学专业", SqlDbType.VarChar,20),
					new SqlParameter("@党政职别", SqlDbType.VarChar,20),
					new SqlParameter("@职称", SqlDbType.VarChar,20),
					new SqlParameter("@获职称时间", SqlDbType.VarChar,20),
					new SqlParameter("@工人技术等级", SqlDbType.VarChar,20),
					new SqlParameter("@鉴定工种", SqlDbType.VarChar,20),
					new SqlParameter("@鉴定工种时间", SqlDbType.VarChar,20),
					new SqlParameter("@医疗保险号", SqlDbType.VarChar,20),
					new SqlParameter("@社会保险号", SqlDbType.VarChar,20),
					new SqlParameter("@人事档案号", SqlDbType.VarChar,20),
					new SqlParameter("@劳动合同号", SqlDbType.VarChar,20),
					new SqlParameter("@ID", SqlDbType.Int,4)};
			parameters[0].Value = model.工号;
			parameters[1].Value = model.姓名;
			parameters[2].Value = model.性别;
			parameters[3].Value = model.出生日期;
			parameters[4].Value = model.单位;
			parameters[5].Value = model.部门;
			parameters[6].Value = model.用工性质;
			parameters[7].Value = model.身份证号;
			parameters[8].Value = model.参加工作时间;
			parameters[9].Value = model.政治面貌;
			parameters[10].Value = model.婚姻状况;
			parameters[11].Value = model.民族;
			parameters[12].Value = model.籍贯;
			parameters[13].Value = model.干工标识;
			parameters[14].Value = model.学历;
			parameters[15].Value = model.学历种类;
			parameters[16].Value = model.学习形式;
			parameters[17].Value = model.毕业学校;
			parameters[18].Value = model.毕业时间;
			parameters[19].Value = model.毕业类别;
			parameters[20].Value = model.所学专业;
			parameters[21].Value = model.党政职别;
			parameters[22].Value = model.职称;
			parameters[23].Value = model.获职称时间;
			parameters[24].Value = model.工人技术等级;
			parameters[25].Value = model.鉴定工种;
			parameters[26].Value = model.鉴定工种时间;
			parameters[27].Value = model.医疗保险号;
			parameters[28].Value = model.社会保险号;
			parameters[29].Value = model.人事档案号;
			parameters[30].Value = model.劳动合同号;
			parameters[31].Value = model.ID;

			int rows=DbHelperSQL.ExecuteSql(strSql.ToString(),parameters);
			if (rows > 0)
			{
				return true;
			}
			else
			{
				return false;
			}
		}

		/// <summary>
		/// 删除一条数据
		/// </summary>
		public bool Delete(int ID)
		{
			
			StringBuilder strSql=new StringBuilder();
			strSql.Append("delete from Mess ");
			strSql.Append(" where ID=@ID");
			SqlParameter[] parameters = {
					new SqlParameter("@ID", SqlDbType.Int,4)
			};
			parameters[0].Value = ID;

			int rows=DbHelperSQL.ExecuteSql(strSql.ToString(),parameters);
			if (rows > 0)
			{
				return true;
			}
			else
			{
				return false;
			}
		}
		/// <summary>
		/// 批量删除数据
		/// </summary>
		public bool DeleteList(string IDlist )
		{
			StringBuilder strSql=new StringBuilder();
			strSql.Append("delete from Mess ");
			strSql.Append(" where ID in ("+IDlist + ")  ");
			int rows=DbHelperSQL.ExecuteSql(strSql.ToString());
			if (rows > 0)
			{
				return true;
			}
			else
			{
				return false;
			}
		}


		/// <summary>
		/// 得到一个对象实体
		/// </summary>
		public RLZY.Model.Mess GetModel(int ID)
		{
			
			StringBuilder strSql=new StringBuilder();
			strSql.Append("select  top 1 ID,工号,姓名,性别,出生日期,单位,部门,用工性质,身份证号,参加工作时间,政治面貌,婚姻状况,民族,籍贯,干工标识,学历,学历种类,学习形式,毕业学校,毕业时间,毕业类别,所学专业,党政职别,职称,获职称时间,工人技术等级,鉴定工种,鉴定工种时间,医疗保险号,社会保险号,人事档案号,劳动合同号 from Mess ");
			strSql.Append(" where ID=@ID");
			SqlParameter[] parameters = {
					new SqlParameter("@ID", SqlDbType.Int,4)
			};
			parameters[0].Value = ID;

			RLZY.Model.Mess model=new RLZY.Model.Mess();
			DataSet ds=DbHelperSQL.Query(strSql.ToString(),parameters);
			if(ds.Tables[0].Rows.Count>0)
			{
				return DataRowToModel(ds.Tables[0].Rows[0]);
			}
			else
			{
				return null;
			}
		}


		/// <summary>
		/// 得到一个对象实体
		/// </summary>
		public RLZY.Model.Mess DataRowToModel(DataRow row)
		{
			RLZY.Model.Mess model=new RLZY.Model.Mess();
			if (row != null)
			{
				if(row["ID"]!=null && row["ID"].ToString()!="")
				{
					model.ID=int.Parse(row["ID"].ToString());
				}
				if(row["工号"]!=null)
				{
					model.工号=row["工号"].ToString();
				}
				if(row["姓名"]!=null)
				{
					model.姓名=row["姓名"].ToString();
				}
				if(row["性别"]!=null)
				{
					model.性别=row["性别"].ToString();
				}
				if(row["出生日期"]!=null)
				{
					model.出生日期=row["出生日期"].ToString();
				}
				if(row["单位"]!=null)
				{
					model.单位=row["单位"].ToString();
				}
				if(row["部门"]!=null)
				{
					model.部门=row["部门"].ToString();
				}
				if(row["用工性质"]!=null)
				{
					model.用工性质=row["用工性质"].ToString();
				}
				if(row["身份证号"]!=null)
				{
					model.身份证号=row["身份证号"].ToString();
				}
				if(row["参加工作时间"]!=null)
				{
					model.参加工作时间=row["参加工作时间"].ToString();
				}
				if(row["政治面貌"]!=null)
				{
					model.政治面貌=row["政治面貌"].ToString();
				}
				if(row["婚姻状况"]!=null)
				{
					model.婚姻状况=row["婚姻状况"].ToString();
				}
				if(row["民族"]!=null)
				{
					model.民族=row["民族"].ToString();
				}
				if(row["籍贯"]!=null)
				{
					model.籍贯=row["籍贯"].ToString();
				}
				if(row["干工标识"]!=null)
				{
					model.干工标识=row["干工标识"].ToString();
				}
				if(row["学历"]!=null)
				{
					model.学历=row["学历"].ToString();
				}
				if(row["学历种类"]!=null)
				{
					model.学历种类=row["学历种类"].ToString();
				}
				if(row["学习形式"]!=null)
				{
					model.学习形式=row["学习形式"].ToString();
				}
				if(row["毕业学校"]!=null)
				{
					model.毕业学校=row["毕业学校"].ToString();
				}
				if(row["毕业时间"]!=null)
				{
					model.毕业时间=row["毕业时间"].ToString();
				}
				if(row["毕业类别"]!=null)
				{
					model.毕业类别=row["毕业类别"].ToString();
				}
				if(row["所学专业"]!=null)
				{
					model.所学专业=row["所学专业"].ToString();
				}
				if(row["党政职别"]!=null)
				{
					model.党政职别=row["党政职别"].ToString();
				}
				if(row["职称"]!=null)
				{
					model.职称=row["职称"].ToString();
				}
				if(row["获职称时间"]!=null)
				{
					model.获职称时间=row["获职称时间"].ToString();
				}
				if(row["工人技术等级"]!=null)
				{
					model.工人技术等级=row["工人技术等级"].ToString();
				}
				if(row["鉴定工种"]!=null)
				{
					model.鉴定工种=row["鉴定工种"].ToString();
				}
				if(row["鉴定工种时间"]!=null)
				{
					model.鉴定工种时间=row["鉴定工种时间"].ToString();
				}
				if(row["医疗保险号"]!=null)
				{
					model.医疗保险号=row["医疗保险号"].ToString();
				}
				if(row["社会保险号"]!=null)
				{
					model.社会保险号=row["社会保险号"].ToString();
				}
				if(row["人事档案号"]!=null)
				{
					model.人事档案号=row["人事档案号"].ToString();
				}
				if(row["劳动合同号"]!=null)
				{
					model.劳动合同号=row["劳动合同号"].ToString();
				}
			}
			return model;
		}

		/// <summary>
		/// 获得数据列表
		/// </summary>
		public DataSet GetList(string strWhere)
		{
			StringBuilder strSql=new StringBuilder();
			strSql.Append("select ID,工号,姓名,性别,出生日期,单位,部门,用工性质,身份证号,参加工作时间,政治面貌,婚姻状况,民族,籍贯,干工标识,学历,学历种类,学习形式,毕业学校,毕业时间,毕业类别,所学专业,党政职别,职称,获职称时间,工人技术等级,鉴定工种,鉴定工种时间,医疗保险号,社会保险号,人事档案号,劳动合同号 ");
			strSql.Append(" FROM Mess ");
			if(strWhere.Trim()!="")
			{
				strSql.Append(" where "+strWhere);
			}
			return DbHelperSQL.Query(strSql.ToString());
		}

		/// <summary>
		/// 获得前几行数据
		/// </summary>
		public DataSet GetList(int Top,string strWhere,string filedOrder)
		{
			StringBuilder strSql=new StringBuilder();
			strSql.Append("select ");
			if(Top>0)
			{
				strSql.Append(" top "+Top.ToString());
			}
			strSql.Append(" ID,工号,姓名,性别,出生日期,单位,部门,用工性质,身份证号,参加工作时间,政治面貌,婚姻状况,民族,籍贯,干工标识,学历,学历种类,学习形式,毕业学校,毕业时间,毕业类别,所学专业,党政职别,职称,获职称时间,工人技术等级,鉴定工种,鉴定工种时间,医疗保险号,社会保险号,人事档案号,劳动合同号 ");
			strSql.Append(" FROM Mess ");
			if(strWhere.Trim()!="")
			{
				strSql.Append(" where "+strWhere);
			}
			strSql.Append(" order by " + filedOrder);
			return DbHelperSQL.Query(strSql.ToString());
		}

		/// <summary>
		/// 获取记录总数
		/// </summary>
		public int GetRecordCount(string strWhere)
		{
			StringBuilder strSql=new StringBuilder();
			strSql.Append("select count(1) FROM Mess ");
			if(strWhere.Trim()!="")
			{
				strSql.Append(" where "+strWhere);
			}
			object obj = DbHelperSQL.GetSingle(strSql.ToString());
			if (obj == null)
			{
				return 0;
			}
			else
			{
				return Convert.ToInt32(obj);
			}
		}
		/// <summary>
		/// 分页获取数据列表
		/// </summary>
		public DataSet GetListByPage(string strWhere, string orderby, int startIndex, int endIndex)
		{
			StringBuilder strSql=new StringBuilder();
			strSql.Append("SELECT * FROM ( ");
			strSql.Append(" SELECT ROW_NUMBER() OVER (");
			if (!string.IsNullOrEmpty(orderby.Trim()))
			{
				strSql.Append("order by T." + orderby );
			}
			else
			{
				strSql.Append("order by T.ID desc");
			}
			strSql.Append(")AS Row, T.*  from Mess T ");
			if (!string.IsNullOrEmpty(strWhere.Trim()))
			{
				strSql.Append(" WHERE " + strWhere);
			}
			strSql.Append(" ) TT");
			strSql.AppendFormat(" WHERE TT.Row between {0} and {1}", startIndex, endIndex);
			return DbHelperSQL.Query(strSql.ToString());
		}

		/*
		/// <summary>
		/// 分页获取数据列表
		/// </summary>
		public DataSet GetList(int PageSize,int PageIndex,string strWhere)
		{
			SqlParameter[] parameters = {
					new SqlParameter("@tblName", SqlDbType.VarChar, 255),
					new SqlParameter("@fldName", SqlDbType.VarChar, 255),
					new SqlParameter("@PageSize", SqlDbType.Int),
					new SqlParameter("@PageIndex", SqlDbType.Int),
					new SqlParameter("@IsReCount", SqlDbType.Bit),
					new SqlParameter("@OrderType", SqlDbType.Bit),
					new SqlParameter("@strWhere", SqlDbType.VarChar,1000),
					};
			parameters[0].Value = "Mess";
			parameters[1].Value = "ID";
			parameters[2].Value = PageSize;
			parameters[3].Value = PageIndex;
			parameters[4].Value = 0;
			parameters[5].Value = 0;
			parameters[6].Value = strWhere;	
			return DbHelperSQL.RunProcedure("UP_GetRecordByPage",parameters,"ds");
		}*/

		#endregion  BasicMethod
		#region  ExtensionMethod

		#endregion  ExtensionMethod
	}
}

